Analytical Tool

ABSTRACT

An exemplary method for determining a singular impact of a base criterion includes selecting the base criterion and a trade criterion from a plurality of criteria and selecting a starting alternative and a target alternative. A series of virtual alternatives are then created, initially based on the starting alternative, by sequentially eliminating an impact of each non-selected criteria from the plurality of criteria. A final virtual alternative is compared to the target alternative and the singular impact of the base criterion is determined based on a difference between the final virtual alternative and the target alternative.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 10/981,988, filed Nov. 4, 2004. This application isrelated to U.S. Pat. No. 6,714,929 and U.S. patent application Ser. No.09/962,708 both of which are incorporated herein by reference.

DESCRIPTION OF THE RELATED ART

There are numerous data analysis techniques that are employed byorganizations to determine various items such as customer needs,preferences and tradeoffs. These techniques include businessintelligence, data mining, marketing analytics and knowledgemanagement/reporting tools. Typically these techniques are based onhistorical data and therefore are typically inadequate in predictingbehavior on new products or markets where historical data is notavailable.

Specifically, these techniques are most likely not capable of predictinghow much a customer is willing to pay for a feature or product, totradeoff certain features, forecast the impact of a change in a productand predicting which feature would most enhance a product.

It should be understood that there is a distinction between the cost ofan option and the perceived value to a consumer of having that option.For example, it may cost a certain amount of money to a manufacturer toinclude an option on a product. The figure that a consumer is willing topay for that option is different and is difficult to determine.Similarly, a consumer may place a premium on a certain grouping ofoptions. Determining that optimal combination can be difficult as well.

In view of the foregoing, it may be useful to provide methods andsystems that analyze a singular impact of a tradeoff or a singularimpact of a group of tradeoffs.

SUMMARY OF EMBODIMENTS OF THE INVENTION

The present invention is described and illustrated in conjunction withsystems, apparatuses and methods of varying scope which are meant to beexemplary and illustrative, not limiting in scope.

A method for determining a singular impact of a base criterion, inaccordance with an exemplary embodiment, includes selecting the basecriterion and a trade criterion from a plurality of criteria andselecting a starting alternative and a target alternative. A series ofvirtual alternatives are then created, initially based on the startingalternative, by sequentially eliminating an impact of each non-selectedcriteria from the plurality of criteria. A final virtual alternative iscompared to the target alternative and the singular impact of the basecriterion is determined based on a difference between the final virtualalternative and the target alternative.

A method for determining a singular impact of a base criterion, inaccordance with another exemplary embodiment, includes selecting thebase criterion and a trade criterion from a plurality of criteria. Astarting alternative and a target alternative are also selected and aseries of virtual alternatives are created, initially based on thestarting alternative, by sequentially eliminating an impact of eachnon-selected criteria from the plurality of criteria. A virtualalternative of the series of virtual alternatives is compared to thetarget alternative wherein the virtual alternative only differs from thetarget alternative by a value of the base criterion. The singular impactof the base criterion is then determined based on a difference betweenthe final virtual alternative and the target alternative.

A method for determining a singular impact of a base criterion, inaccordance with yet another exemplary embodiment, includes selecting thebase criterion and a trade criterion from “N” criteria. A startingalternative and a target alternative are also selected and “N−2”sequential virtual alternatives are created, initially based on thestarting alternative, by sequentially eliminating an impact of eachnon-selected criteria from the “N” criteria. A virtual alternative ofthe series of virtual alternatives is compared to the target alternativewherein the virtual alternative only differs from the target alternativeby a value of the base criterion. The singular impact of the basecriterion is then determined based on a difference between the finalvirtual alternative and the target alternative.

A method for analyzing an impact of a desired singular tradeoff for apopulation of users, in accordance with yet another exemplaryembodiment, includes selecting the desired singular tradeoff from thepopulation of users and collecting a plurality of singular tradeoffs ina sequential fashion from the population of users. The plurality oftradeoffs are then processed and analyzed to determine the impact of thedesired singular tradeoff.

A system for determining a singular impact of a base criterion, inaccordance with another exemplary embodiment, includes a singulartradeoff engine that accepts a weighted ordered list and operative todetermine a singular impact of a base criterion by creating virtualalternatives based on the weighted ordered list. Also included is afunction subroutine engine that accepts parametric values from thesingular tradeoff engine and operative to develop a new value to thesingular tradeoff engine.

A method for determining a value a consumer places on a desired productcomponent, in accordance with an exemplary embodiment, includesproviding a first product without the desired product component and asecond product with the desired product component. A series of simulatedproducts are then created, initially based on the first product, bysequentially eliminating an impact of each non-desired productcomponent. A final simulated product is compared to the second product;and the value is determined based on a difference between the finalsimulated product and the second product.

A method for determining a value a consumer places on a desired productcomponent, in accordance with an exemplary embodiment, includesproviding a first product that does not contain the desired productcomponent and a second product that does contain the desired productcomponent. A series of simulated products are then created, initiallybased on the first product, by sequentially eliminating an impact of oneor more product components that are not the desired product component. Afinal simulated product is compared to the second product; and the valueis determined based on a difference between the final simulated productand the second product.

In addition to the aspects and embodiments of the present inventiondescribed in this summary, further aspects and embodiments of theinvention will become apparent by reference to the drawings and byreading the detailed description that follows.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a screen shot of a web page allowing for the adjustment ofweights;

FIG. 2 is a chart illustrating a processed utilized by an analyticaltool, in accordance with an exemplary embodiment;

FIG. 3 is a flowchart illustrating a process of an analytical tool fordetermining a singular impact of a tradeoff, in accordance with anembodiment of the present invention;

FIG. 4A is a flowchart illustrating a process for analyzing anindividual singular tradeoff for a population of users, in accordancewith an exemplary embodiment;

FIG. 4B is a flowchart illustrating a process for storing an individualtradeoff for each attribute, in accordance with an exemplary embodiment;and

FIG. 5 is a block diagram of an analytical tool system, in accordancewith an exemplary embodiment;

FIG. 6 is a block diagram of an exemplary embodiment of a network; and

FIG. 7 is a block diagram of an exemplary embodiment of a computer.

DETAILED DESCRIPTION

An aspect of the present invention contemplates a variety of methods,systems and data structures for determining a singular impact of atradeoff or criterion. An analysis systematically eliminates the effectof individual non-changed criteria in order to see what happens if aparticular criteria is modified. What results is the individual orsingular impact of adjusting that particular criterion. Other aspectsare also within the scope of the present invention. In terms of thisdisclosure, “singular” can refer to either one item or to a group ofitems that are linked in some manner. Additionally, “singular” can alsorefer to a subcomponent of any economic unit that is capable of beingsold.

FIG. 1 is a screen shot of a web page allowing for the adjustment ofweights. In FIG. 1, a weight adjustment interface 92 lists a number ofproperties including a space property 94, a performance property 96, asafety property 98, a gas mileage property 100, a maintenance costproperty 102, a comfort property 104, and a price property 106.Associated with each of these properties is a “slider bar” 112 includinga diamond shaped indicator 110 (in this example) which can be adjustedin position along the length of the slider bar, as will be appreciatedby those skilled in the art. In a typical interface, a pointer 108controlled, for example, by a pointing device of a computer system(pointing device and computer not shown), is used to engage an indicator110 and to drag to a desired position between the “not important” andthe “very important” ends of the slider bar 112. The making and use ofslider bars is well known to those skilled in the art. The position ofthe indicator 110 along the slider bar 112 is translated into a numericoutput, typically a normalized value between zero and one, which is theweight for the criterion.

In practice, the user input is processed as indicated by the arrow 114to provide an ordered or ranked list 116 which reflects the preferencesof the user. As can be seen in the illustration of FIG. 1, the FordFocus ZX3 coupe had the best overall score and was ranked #1 based uponthe weighted preferences that were input in the weight adjustmentsection of screen shot 90. This was followed by the Ford Escape TWDSport Utility 4D, which was ranked #2, the Ford Taurus SE V6 Wagon 4D,ranked at #3, etc.

FIG. 2 is a chart illustrating a processed utilized by an analyticaltool, in accordance with an exemplary embodiment. Chart 1020 shows twoalternatives from a list ranked according to the weights shown in row1018. Included in chart 1020 and row 1018 are a plurality ofcriteria/tradeoffs that include price, horsepower (HP), mileage (MPG)and safety. The analytic tool calculates singular tradeoffs between twocriteria by progressively eliminating the contributions of all othercriteria. This elimination process is carried out through generation ofintermediate “equivalent” alternatives. FIG. 2 shows two such, 1022 and1024, used to eliminate the contribution of the safety and mileagecriteria, respectively.

In a hypothetical situation, a Ford motor company would like todetermine how much a consumer is willing to pay per horsepower to gofrom 210 h.p. (the Honda's) to 260 h.p. (the Ford's). Again, it shouldbe understood that the value the consumer is willing to pay per h.p.increase is being determined and not the actual cost to the manufacturerto for the increase. To determine this perceived value, Ford comparestheir model to the Honda model that already has the desired feature—theincreased H.P. The algorithm first marks the Honda as the targetalternative 1026 and the Ford as the starting alternative 1028. Then,the starting alternative 1028 is converted to the modified virtualalternative 1024, through virtual alternative 1022, so that virtualalternative 1024 differs from the target alternative 1026 only in priceand horsepower. One can then obtain the price that the consumer iswilling to pay per additional horsepower from a ratio between the pricedifference and the horsepower difference for alternatives 1026 and 1024.This price is referred to in this document as the singular impact of atradeoff. The elimination process will be explained in more detail,subsequently.

It is important to note that, although the algorithm is typically usedfor price/feature singular impact tradeoff calculations, it iscompletely generic, and can apply just as well to situations where atradeoff between two features is desired (for example, horsepower versusmileage). The inputs to the algorithm are as follows:

-   -   The criterion to be marked as the base criterion; in the example        of FIG. 2, this is the horsepower.    -   The criterion to be marked as the trade criterion; in the        example of FIG. 2, this is the price.    -   The starting alternative; in the example of FIG. 2, this is the        Ford (1028).    -   The target alternative; in the example of FIG. 2, this is the        Honda (1026).

Given this set of input directives, the algorithm modifies the values ofcriteria in the starting alternative so that they match the values inthe target alternative. The value for the base criterion is leftunmodified, and that for the trade criterion is changed depending on thenew values of other criteria, as described later. The end result is avirtual alternative that differs from the target in just the values ofthe base and trade criteria.

It should be further noted that the target alternative is usually thepreferred choice while the starting alternative is the less preferredchoice. It should also be further noted that the trade, in the precedingexample, is the price which takes the form of a unit of currency.However, the criteria marked as the trade and the base can be anycriteria related to a product that can be adjusted or added on. Withthat in mind, it is quite clear that, while the preceding example usesautomobile related criteria, any economic unit capable of being soldthat has subcomponents can be substituted.

Some further embodiments can take the form of, but are certainly notlimited to, a consumer electronics manufacturer that is planning a newdigital camera model, whose target price has been fixed by marketconsiderations within a restricted range. In this situation, theinteresting information is not how much real currency end users would bewilling to pay for this or that feature, but rather how much of afeature they are willing to forego in order to get more of another. Thealgorithms effectively convert one of the two features into a virtualunit of currency, which is then exchanged for the other feature. In thecase of the digital camera, the designers may want to determine thetradeoff between the lens quality and the digitization speed of thesensor. Depending on how much quality the end user is willing to give upfor the ability to take consecutive pictures as quickly as possible, theanswer will suggest whether to include more expensive optics, or putmore money into a larger acquisition buffer.

Yet another embodiment could be a cable broadcast company that wants tointroduce a new package that contains strong parental control features.In this case, the economic unit is not a hard good, but rather a softservice. Assuming that, just as for the digital camera, the price hasbeen fixed by market considerations, then the interesting information ishow the added parental control features stack up against, say, the widthand breadth of the channel offering. In other words, how much “channelselection dollars” are end users willing to “pay” in order to have thosenew parental control features? The various algorithms employed in thisdisclosure can answer such questions.

The process of eliminating the impact of each criterion will now beexplained. FIG. 3 is a flowchart illustrating a process 118 of ananalytical tool for determining a singular impact of a tradeoff, inaccordance with an exemplary embodiment. The process begins at 120 andin an operation 122, the base and trade criteria are selected out of theN available criteria. In the preceding example, the base criterion isthe horsepower, the trade criterion the price, and N is equal to 4 (forprice, horsepower, mileage, and safety). In an operation 124, thestarting virtual alternative and the target alternative are selected; inthe preceding example, the starting virtual alternative is the Ford, andthe target alternative the Honda. An iterative loop 126 is thencommenced with a counter beginning at 0, incrementing by 1, and loopingas long as it is smaller than N; this counter is also an index into thearray of criteria. Next, in an operation 128 it is decided if thecounter corresponds to the index of the base or tradeoff criteria; if itis, then the rest of the loop body is skipped and control is passed backto operation 126. If the counter corresponds to neither the base nor thetrade criterion, then operations 130 and 132 are executed to generate anew virtual alternative.

Operation 130 analyzes the current values for the target and virtualalternatives, and, in this example, applies a customizable, and possiblycriterion-specific, algorithm to change the value of the base criterionto account for the fact that operation 132 sets the value of the currentcriterion in the virtual alternative to be the same as in the targetalternative. Therefore, the two operations 130 and 132 generate avirtual alternative where the value of the current criterion isidentical to the corresponding one in the target alternative, and thevalue of the base criterion has been adjusted to account for the changein the current criterion. Operations 130 and 132 eliminate the impact ofthe current criterion from the alternative.

Finally, it can be appreciated that, by looping through, the impact ofeach criterion is eliminated until just the impact of the tradecriterion is left and is finally calculated at operation 134 by dividingthe difference between the values of the base criteria for the targetand final virtual alternatives by the difference between the values ofthe trade criteria for the same alternatives. Process 118 then ends atoperation 136.

The algorithm implemented by operation 130 has access to the currentexecution context of loop 138; this context includes, but is not limitedto, the target alternative, the current virtual alternative, the baseand trade criteria, and the current criterion as identified by the loopcounter. In addition, process 118 has been provided with a list ofoperation 130 algorithms associated with the various criteria. Examplesof such algorithms follow, using the setting of FIG. 3; note that thisis by necessity not a complete list, since the algorithms applied inoperation 130 may be highly dependent on the specific setting (forexample, they may be highly dependent on the semantics of the trade andbase criteria).

So, since the base and trade criteria are price and HP, respectively,operation 130 calculates the change in price that would correspond tochange the mileage from 15 (the Ford's value) to 18 (the Honda's), orthe safety from 4 stars (the Ford's) to 5 stars (the Honda's). As wasdiscussed earlier, operation 130 may implement varied algorithms, ofvarious complexities, tailored to each criterion's semantics. A simplealgorithm may use singular impact of tradeoff values that were obtainedvia other means, such as focus groups or user surveys. For example, anorganization may have already established that the typical end user iswilling to pay up to $500 for a sunroof, and can use that information toeliminate the contribution of a sunroof when generatingautomobile-related virtual alternatives. Another algorithm may estimatethe tradeoff value as a percentage of the cost of providing the givenfeature: for example, a digital camera manufacturer knows the additionalprice of producing a model with a 4 megapixel instead a 3 megapixelsensor, and estimates a user's tradeoff value to be 125% of that cost.Finally, complex algorithms may use information like the end-user'stradeoff preferences (the weights used for the ranking) to estimate thepercentage of a total price difference to allocate to the adjustment fora specific criterion.

FIG. 4A and 4B illustrate various, exemplary, but not limitingimplementations of process 138. FIG. 4A is a flowchart illustrating aprocess 138A for analyzing a singular tradeoff from a population ofusers, in accordance with an exemplary embodiment. After a startoperation 1040, the desired singular tradeoff and target user populationare selected in operations 1042 and 1044, respectively; the populationwill contain Nusers. The loop operation 1046 sets a counter to 0,increases it by 1 with each iteration, and exits when the counter isgreater than, or equal to, N. The individual singular tradeoff for useri is collected, in accordance with an embodiment of the presentinvention, and stored for later processing in operation 1048. Thisoperation embeds the analytic engine described in FIG. 3. Once allsingular tradeoffs have been collected, they are processed as a group,for example by calculating the average, or with other statisticaltechniques, in operation 1052. Finally, the processed singular tradeoffsare used for analysis in operation 1054. The process 138A is thencompleted at operation 1056.

FIG. 4B is a flowchart illustrating a process 138B for storing anindividual singular tradeoff for a set of attributes, in accordance anexemplary embodiment. After a start operation 1060, operation 1062selects M from N possible attributes for calculation of singulartradeoffs. The loop operation 1064 sets a counter to 0, increases it by1 with each iteration, and exits when the counter is greater than, orequal to, N. Operation 1066 checks if the criterion at counter i is oneof the M selected criteria. If so, operation 1068 calculates thesingular tradeoff, in accordance with an embodiment of the presentinvention, and stores for use by operation 1070; otherwise, control isreturned to operation 1064. When all criteria have been processed,operation 1070 performs the desired analyses on the collection ofsingular tradeoffs. Operation 1072 then ends process 138A.

FIG. 5 is a block diagram of an analytical tool system 160, inaccordance with an exemplary embodiment. Included in system 160 is asingular tradeoff engine 162 and a function subroutine engine 164.Singular tradeoff engine 162 accepts as input a weighted ordered listand produces a singular tradeoff in conjunction with function subroutineengine 164. This occurs by exchanging parametric values from thesingular tradeoff engine 162 to the function subroutine 164. Inresponse, the function subroutine engine 162 sends a new value to thesingular tradeoff engine 162. The system 160, for example, can beimplemented on a computer system using software to perform processessuch as those described above. Alternatively, the system 160 can beimplemented in hardware, software or any combination thereof. Theengines 160 and 164 can operate on any principle including digital,analog and other computing modalities.

The following description of FIGS. 6-7 is intended to provide anoverview of computer hardware and other operating components suitablefor performing the methods of the invention described above, but is notintended to limit the applicable environments. Similarly, the computerhardware and other operating components may be suitable as part of theapparatuses of the invention described above. The invention can bepracticed with other computer system configurations, including hand-helddevices, multiprocessor systems, microprocessor-based or programmableconsumer electronics, network PCs, minicomputers, mainframe computers,and the like. The invention can also be practiced in distributedcomputing environments where tasks are performed by remote processingdevices that are linked through a communications network.

FIG. 6 is a block diagram of an exemplary embodiment of a network 705,such as the Internet. The term “Internet” as used herein refers to anetwork of networks which uses certain protocols, such as the TCP/IPprotocol, and possibly other protocols such as the hypertext transferprotocol (HTTP) for hypertext markup language (HTML) documents that makeup the World Wide Web (web). The physical connections of the Internetand the protocols and communication procedures of the Internet are wellknown to those of skill in the art.

) Access to the Internet 705 is typically provided by Internet serviceproviders (ISP), such as the ISPs 710 and 715. Users on client systems,such as client computer systems 730, 740, 750, and 760 obtain access tothe Internet through the Internet service providers, such as ISPs 710and 715. Access to the Internet allows users of the client computersystems to exchange information, receive and send e-mails, and viewdocuments, such as documents which have been prepared in the HTMLformat. These documents are often provided by web servers, such as webserver 720 which is considered to be “on” the Internet. Often these webservers are provided by the ISPs, such as ISP 710, although a computersystem can be set up and connected to the Internet without that systemalso being an ISP.

The web server 720 is typically at least one computer system whichoperates as a server computer system and is configured to operate withthe protocols of the World Wide Web and is coupled to the Internet.Optionally, the web server 720 can be part of an ISP which providesaccess to the Internet for client systems. The web server 720 is showncoupled to the server computer system 725 which itself is coupled to webcontent 795, which can be considered a form of a media database. Whiletwo computer systems 720 and 725 are shown in FIG. 6, the web serversystem 720 and the server computer system 725 can be one computer systemhaving different software components providing the web serverfunctionality and the server functionality provided by the servercomputer system 725 which will be described further below.

Client computer systems 730, 740, 750, and 760 can each, with theappropriate web browsing software, view HTML pages provided by the webserver 720. The ISP 710 provides Internet connectivity to the clientcomputer system 730 through the modem interface 735 which can beconsidered part of the client computer system 730. The client computersystem can be a personal computer system, a network computer, a Web TVsystem, or other such computer system.

Similarly, the ISP 715 provides Internet connectivity for client systems740, 750, and 760, although as shown in FIG. 6, the connections are notthe same for these three computer systems. Client computer system 740 iscoupled through a modem interface 745 while client computer systems 750and 760 are part of a LAN. While FIG. 6 shows the interfaces 735 and 745as generically as a “modem,” each of these interfaces can be an analogmodem, ISDN modem, cable modem, satellite transmission interface (e.g.“Direct PC”), or other interfaces for coupling a computer system toother computer systems.

Client computer systems 750 and 760 may be coupled to a LAN 770 throughnetwork interfaces 755 and 765, which can be Ethernet network or othernetwork interfaces. The LAN 770 is also coupled to a gateway computersystem 775 which can provide firewall and other Internet relatedservices for the local area network. This gateway computer system 775 iscoupled to the ISP 715 to provide Internet connectivity to the clientcomputer systems 750 and 760. The gateway computer system 775 can be aconventional server computer system. Also, the web server system 720 canbe a conventional server computer system.

Alternatively, a server computer system 780 can be directly coupled tothe LAN 770 through a network interface 785 to provide files 790 andother services to the clients 750, 760, without the need to connect tothe Internet through the gateway system 775.

FIG. 7 is a block diagram of an exemplary embodiment of a computer thatcan be used as a client computer system or a server computer system oras a web server system. Such a computer system can be used to performmany of the functions of an Internet service provider, such as ISP 710.The computer system 800 interfaces to external systems through the modemor network interface 820. It will be appreciated that the modem ornetwork interface 820 can be considered to be part of the computersystem 800. This interface 820 can be an analog modem, ISDN modem, cablemodem, token ring interface, satellite transmission interface (e.g.“Direct PC”), or other interfaces for coupling a computer system toother computersystems.

The computer system 800 includes a processor 810, which can be aconventional microprocessor such as an Intel Pentium microprocessor orMotorola Power PC microprocessor. Memory 840 is coupled to the processor810 by a bus 870. Memory 840 can be dynamic random access memory (DRAM)and can also include static RAM (SRAM). The bus 870 couples theprocessor 810 to the memory 840, also to non-volatile storage 850, todisplay controller 830, and to the input/output (I/O) controller 860.

The display controller 830 controls in the conventional manner a displayon a display device 835 which can be a cathode ray tube (CRT) or liquidcrystal display (LCD). The input/output devices 855 can include akeyboard, disk drives, printers, a scanner, and other input and outputdevices, including a mouse or other pointing device. The displaycontroller 830 and the I/O controller 860 can be implemented withconventional well known technology. A digital image input device 865 canbe a digital camera which is coupled to an I/O controller 860 in orderto allow images from the digital camera to be input into the computersystem 800.

The non-volatile storage 850 is often a magnetic hard disk, an opticaldisk, or another form of storage for large amounts of data. Some of thisdata is often written, by a direct memory access process, into memory840 during execution of software in the computer system 800. One ofskill in the art will immediately recognize that the terms“machine-readable medium” or “computer-readable medium” includes anytype of storage device that is accessible by the processor 810 and alsoencompasses a carrier wave that encodes a data signal.

The computer system 800 is one example of many possible computer systemswhich have different architectures. For example, personal computersbased on an Intel microprocessor often have multiple buses, one of whichcan be an input/output (I/O) bus for the peripherals and one thatdirectly connects the processor 810 and the memory 840 (often referredto as a memory bus). The buses are connected together through bridgecomponents that perform any necessary translation due to differing busprotocols.

Network computers are another type of computer system that can be usedwith the present invention. Network computers do not usually include ahard disk or other mass storage, and the executable programs are loadedfrom a network connection into the memory 840 for execution by theprocessor 810. A Web TV system, which is known in the art, is alsoconsidered to be a computer system according to this embodiment, but itmay lack some of the features shown in FIG. 6, such as certain input oroutput devices. A typical computer system will usually include at leasta processor, memory, and a bus coupling the memory to the processor.

In addition, the computer system 800 is controlled by operating systemsoftware which includes a file management system, such as a diskoperating system, which is part of the operating system software. Oneexample of an operating system software with its associated filemanagement system software is the family of operating systems known asWindows® from Microsoft Corporation of Redmond, Wash., and theirassociated file management systems. Another example of an operatingsystem software with its associated file management system software isthe LINUX operating system and its associated file management system.The file management system is typically stored in the non-volatilestorage 850 and causes the processor 810 to execute the various actsrequired by the operating system to input and output data and to storedata in memory, including storing files on the non-volatile storage 850.

Some portions of the detailed description are presented in terms ofalgorithms and symbolic representations of operations on data bitswithin a computer memory. These algorithmic descriptions andrepresentations are the means used by those skilled in the dataprocessing arts to most effectively convey the substance of their workto others skilled in the art. An algorithm is here, and generally,conceived to be a self-consistent sequence of operations leading to adesired result. The operations are those requiring physicalmanipulations of physical quantities. Usually, though not necessarily,these quantities take the form of electrical or magnetic signals capableof being stored, transferred, combined, compared, and otherwisemanipulated. It has proven convenient at times, principally for reasonsof common usage, to refer to these signals as bits, values, elements,symbols, characters, terms, numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the following discussion,it is appreciated that throughout the description, discussions utilizingterms such as “processing” or “computing” or “calculating” or“determining” or “displaying” or the like, refer to the action andprocesses of a computer system, or similar typically electroniccomputing device, that manipulates and transforms data represented asphysical (electronic) quantities within the computer system's registersand memories into other data similarly represented as physicalquantities within the computer system memories or registers or othersuch information storage, transmission or display devices.

Some embodiments also relate to apparatus for performing the operationsherein. This apparatus may be specially constructed for the requiredpurposes, or it may comprise a general purpose computer selectivelyactivated or reconfigured by a computer program stored in the computer.Such a computer program may be stored (embodied) in a computer (machine)readable storage medium, such as, but is not limited to, any type ofdisk including floppy disks, optical disks, CD-ROMs, andmagnetic-optical disks, read-only memories (ROMs), random accessmemories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any typeof media suitable for storing electronic instructions, and each coupledto a computer system bus.

The algorithms and displays presented herein are not inherently relatedto any particular computer or other apparatus. Various general purposesystems may be used with programs in accordance with the teachingsherein, or it may prove convenient to construct more specializedapparatus to perform the required method steps. The required structurefor a variety of these systems will appear from the description below.In addition, the present invention is not described with reference toany particular programming language, and various embodiments may thus beimplemented using a variety of programming languages.

While this invention has been described in terms of certain embodiments,it will be appreciated by those skilled in the art that certainmodifications, permutations and equivalents thereof are within theinventive scope of the present invention. It is therefore intended thatthe following appended claims include all such modifications,permutations and equivalents as fall within the true spirit and scope ofthe present invention.

What is claimed is:
 1. A method for analyzing an impact of a desiredsingular tradeoff for a population of users comprising: selecting thedesired singular tradeoff from the population of users; collecting aplurality of singular tradeoffs in a sequential fashion from thepopulation of users; processing the plurality of singular tradeoffs;analyzing the plurality of singular tradeoffs; and determining theimpact of the desired singular tradeoff based on the analyzed pluralityof tradeoffs.
 2. The method as recited in claim 1 wherein the desiredsingular tradeoff comprises two or more subcomponents.
 3. The method asrecited in claim 1 wherein the plurality of singular tradeoffs aresubcomponents of an economic unit capable of being sold.
 4. The methodas recited in claim 3 wherein the economic unit is a plurality ofeconomic units comprising the population of users.
 5. The method asrecited in claim 1 wherein the impact of the desired singular tradeoffis a unit of currency per the desired singular tradeoff.
 6. A computerimplemented method for generating a price of an item or a feature basedon user preference comprising: receiving at a server a request forpricing; receiving an identification of an item or a feature for whichpricing is desired; receiving at least a first preference for theidentified item or feature; and generating in response a price for theidentified item or feature.
 7. A method as set forth in claim 6 whereinthe price is generated in real time.
 8. A computer implemented methodfor generating a price of an item or a feature based on user preferencecomprising: receiving at a server a request for pricing; receiving anidentification of an item or a feature for which pricing is desired;retrieving situational environment information relevant to pricing; andgenerating the price based on the identification and the situationalenvironment information.